package com.gxc.dbcore.dao;

import org.apache.ibatis.session.SqlSession;

import com.gxc.dbcore.util.PageInfo;
import com.gxc.dbcore.util.PageList;

public interface SqlDao extends SqlSession {

	/**
	 * 查询符合条件的记录数
	 * 
	 * @param statement
	 * @param parameter
	 * @return
	 */
	public long selectForCount(String statement, Object parameter);

	/**
	 * 查询分页
	 * 
	 * @param statement
	 * @param parameter
	 * @param pageInfo
	 * @return
	 */
	public PageList selectPageList(String statement, Object parameter,
			PageInfo pageInfo);

	/**
	 * 查询分页
	 * 
	 * @param statement
	 * @param countStatement
	 * @param parameter
	 * @param pageInfo
	 * @return
	 */
	public PageList selectPageList(String statement, String countStatement,
			Object parameter, PageInfo pageInfo);

	/**
	 * 查询分页
	 * 
	 * @param statement
	 * @param parameter
	 * @param countStatement
	 * @param countParameter
	 * @param pageInfo
	 * @return
	 */
	public PageList selectPageList(String statement, Object parameter,
			String countStatement, Object countParameter, PageInfo pageInfo);

}
